package com.htgd.gardenexpo.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;

import java.io.Serializable;

/**
 * @author: 王秀田
 * @date: 2024/12/4 8:40
 * @description: 消息类 , 包含消息的id,消息内容,以及到期时间(消息的执行时间)
 */

@AllArgsConstructor
@NoArgsConstructor
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("delay_message")
@ApiModel(value="DelayMessage对象", description="消息消费表（redis队列持久化）")
public class DelayMessage implements Serializable {

    /**
     * 切记实例化
     */
    private static final long serialVersionUID = -7671756385477179547L;

    /**
     * 消息 id
     */
    @TableId(value = "id", type = IdType.ASSIGN_ID)
    private String id;

    /**
     * 消息内容
     */
    private String content;

    /**
     * 消息到期时间(指定当前消息在什么时间开始消费(时间戳))
     */
    private long expireTime;

    /**
     * 类型（‘1’：赛事运动，‘2’：休闲运动）
     */
    private String type;

    /**
     * 状态（‘1’开始，‘2’:结束）
     */
    private String status;
}
